package com.example.demo.utils;

import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.util.UUID;

public class FileUtil {

    /**
     * 获取文件扩展名
     * @param file 需要获取拓展名的文件
     * @return
     */
    private static String getFileExtension(File file) {
        String fileName = file.getName();
        int dotIndex = fileName.lastIndexOf(".");

        if (dotIndex > 0) {
            return fileName.substring(dotIndex);  // 返回扩展名, 包括点
        } else {
            return "";  // 如果没有扩展名，返回空字符串
        }
    }

    /**
     * 获取文件扩展名
     * @param file 需要获取拓展名的文件
     * @return
     */
    private static String getFileExtension(MultipartFile file) {
        String fileName = file.getOriginalFilename();
        int dotIndex = fileName.lastIndexOf(".");

        if (dotIndex > 0) {
            return fileName.substring(dotIndex);  // 返回扩展名, 包括点
        } else {
            return "";  // 如果没有扩展名，返回空字符串
        }
    }

    /**
     * 使用UUID生成唯一文件名
     * @param file 需要生成唯一文件名的文件
     * @return 生成的唯一文件名
     */
    public static String generateFileName(File file) {
        return UUID.randomUUID().toString() + getFileExtension(file);
    }

    /**
     * 使用UUID生成唯一文件名
     * @param file 需要生成唯一文件名的文件
     * @return 生成的唯一文件名
     */
    public static String generateFileName(MultipartFile file) {
        return UUID.randomUUID().toString() + getFileExtension(file);
    }


}
